Skip to content

[CHORE] Deprecate overture_releases.yaml#529

Merged
John McCall (lowlydba) merged 10 commits into
mainfrom
526-chore-deprecate-overture_releasesyaml
Jun 15, 2026
Merged

[CHORE] Deprecate overture_releases.yaml#529
John McCall (lowlydba) merged 10 commits into
mainfrom
526-chore-deprecate-overture_releasesyaml

Conversation

@lowlydba

@lowlydba John McCall (lowlydba) commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Closes #526

Published bundle before/after

File Before After
releases.json Full S3 listing (~30 entries) STAC catalog only (~2 active releases, since data is deleted after 2 months)
latest.ddb Driven by S3 listing Unchanged, now driven by STAC latest field
latest.dbb Legacy alias for latest.ddb Removed
registry-manifest.json Generated by simple-registry-manifest.py Removed — available via the STAC catalog
overture_releases.yaml Authoritative release list Kept for existing consumers, gains deprecation comment pointing to STAC
404.html Not present New — OMF-branded page redirecting stale URLs to README + STAC catalog

Changes

  • Replace fetch-releases-from-s3.py with fetch_releases_from_stac.py, sourcing releases from https://stac.overturemaps.org/catalog.json
  • Drop obstore and pyarrow dependencies (no longer needed)
  • Remove simple-registry-manifest.py (registry manifest is already in the STAC catalog)
  • Add deprecation header to overture_releases.yaml
  • Add deprecation notice to README.md covering overture_releases.yaml, releases.json, and registry-manifest.json
  • Remove latest.dbb (legacy typo alias)
  • Add 404.html with OMF branding — redirects to README and STAC catalog after 5 seconds
  • Add 22 unit tests for the new fetch script
  • Add test.yml CI workflow running on push and PRs
  • Update Python 3.11 -> 3.12 across both workflows

404

This new 404 will appear for anyone trying to hit the dead URLs of files we're removing:

{FCE31CAC-53EF-416F-A65E-3C1C0BFE78DE}

- Replace fetch-releases-from-s3.py with fetch_releases_from_stac.py
  driven by https://stac.overturemaps.org/catalog.json instead of S3 listing
- Drop obstore dependency from requirements.txt
- Add deprecation header to overture_releases.yaml (kept for existing consumers)
- Add index.html landing page for labs.overturemaps.org/data (was 404)
- Add unit tests (19) for fetch_releases_from_stac.py
- Add test.yml CI workflow (runs on push + PR)
- Update Python 3.11 -> 3.12 in both workflows

Published bundle before/after:
  releases.json       S3 listing (~30 entries) -> STAC catalog (~2 active releases)
  latest.ddb          unchanged
  latest.dbb          unchanged (legacy alias, now marked deprecated)
  registry-manifest   unchanged
  overture_releases.yaml  unchanged data, gains deprecation comment
  index.html          new: directory landing page (was 404)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
@lowlydba John McCall (lowlydba) linked an issue Jun 11, 2026 that may be closed by this pull request
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR shifts release discovery for published artifacts away from an S3 listing + overture_releases.yaml to the Overture STAC catalog, while keeping legacy outputs (e.g., releases.json, latest.ddb/.dbb, overture_releases.yaml) available but increasingly marked as deprecated. It also adds a simple landing page and introduces CI test coverage for the new STAC-based fetch script.

Changes:

  • Replace the S3-based release fetch script with fetch_releases_from_stac.py that reads from https://stac.overturemaps.org/catalog.json, and remove the obstore dependency.
  • Add unit tests for the new fetch script and a new GitHub Actions workflow to run them.
  • Add a root index.html directory landing page and add a deprecation header to overture_releases.yaml.

Reviewed changes

Copilot reviewed 9 out of 11 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
utils/tests/test_fetch_releases_from_stac.py Adds unit tests for STAC fetch + release parsing + DuckDB view SQL generation.
utils/tests/__init__.py Initializes the utils.tests package.
utils/requirements.txt Removes obstore; retains DuckDB + PyArrow requirements.
utils/requirements-test.txt Adds pytest test requirements for the utils tests.
utils/fetch-releases-from-s3.py Removes legacy S3-listing-based script.
utils/fetch_releases_from_stac.py New STAC-based implementation for generating releases.json and DuckDB views.
overture_releases.yaml Adds a deprecation header pointing consumers to STAC.
index.html Adds a new static landing page listing published artifacts and deprecation notes.
.gitignore Adds Python bytecode/cache ignores.
.github/workflows/test.yml Adds CI job to run utils unit tests on PRs and main branch pushes.
.github/workflows/build-manifests.yml Updates publishing workflow to Python 3.12 and runs the new STAC fetch script; publishes index.html.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread utils/fetch_releases_from_stac.py Outdated
Comment thread utils/fetch_releases_from_stac.py
Comment thread utils/fetch_releases_from_stac.py Outdated
Comment thread utils/tests/test_fetch_releases_from_stac.py Outdated
Comment thread utils/tests/test_fetch_releases_from_stac.py Outdated
Comment thread utils/tests/test_fetch_releases_from_stac.py Outdated
- Add 30s timeout + User-Agent header to fetch_catalog
- Robust href parsing via urlparse (handles absolute + relative hrefs)
- Close DuckDB connection in finally block
- Remove unused test imports (tempfile, BytesIO, duckdb, pytest)
- Update test_uses_provided_url to assert on Request.full_url + timeout
- Add tests for absolute href and no-./-prefix relative href

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
@danabauer

Dana Bauer (danabauer) commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

John McCall (@lowlydba) you can just kill latest.dbb. It was created in error (typo) and immediately replaced by latest.ddb

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
@lowlydba

Copy link
Copy Markdown
Contributor Author

John McCall (John McCall (@lowlydba)) you can just kill latest.dbb. It was created in error (typo) and immediately replaced by latest.ddb

Great - removed ✅

Comment thread utils/requirements.txt
Comment thread index.html Outdated
Comment thread .github/workflows/build-manifests.yml Outdated
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
@danabauer

Copy link
Copy Markdown
Collaborator

Thanks, John McCall (@lowlydba)!

John McCall (lowlydba) and others added 5 commits June 15, 2026 11:13
…output

Registry manifest is available via the STAC catalog. Also drop pyarrow
dependency which was only needed by this script.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Signed-off-by: John McCall <john@overturemaps.org>
@lowlydba John McCall (lowlydba) merged commit a333a47 into main Jun 15, 2026
9 checks passed
@lowlydba John McCall (lowlydba) deleted the 526-chore-deprecate-overture_releasesyaml branch June 15, 2026 15:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[CHORE] Deprecate overture_releases.yaml

3 participants